Copyright: Copyright © 1998-2001 InteLife Solutions


Редактор Иероглиф
Редактор "Иероглиф"

О программе

Иероглиф - это универсальный редактор, серьезно ориентированный на работу с русскими текстами, с обширным набором уникальных функций при весьма небольшом размере. Иероглиф может использоваться как редактор по-умолчанию вместо Notepad и Wordpad и является хорошим дополнением к Microsoft Word. Иероглиф также заменит все ваши программы перекодировки, работы с испорченной почтой, работы с UNICODE и решит многие проблемы русификации.

Последнюю версию программы всегда можно найти на страничке Иероглифа в Интернете (http://www.afterscan.com/hieroglyph).

Новое в версии 3.7

Реализована полная совместимость с RichEdit 3.0. Новые функции вызываются с панелей инструментов (toolbars) -

1. Выравнивание текста по ширине (justify),

2. Нумерованные списки,

3. Масштабирование (zoom).

4. Настраиваемое расстояние между строками (line spacing)

5. Разные стили подчеркивания.

В корне переделана функция сортировки списков:

6. Сильно увеличена скорость сортировки.

7. Возможна сортировка текстовых файлов без открывания в редакторе (особенно полезно для крупных файлов)

8. Поддержка UNICODE и сортировки по любым языкам (независимо от выбранного языка системы)

9. Добавлена возможность сортировки по длине слова и в обратном порядке

Прекращено использование спелл-чекеров Microsoft. Теперь Иероглиф поставляется со своим спелл-чекером -

10. Новый спелл-чекер примерно от 20% до 50% быстрее (зависит от языка и количества словарей) и содержат больше слов

11. Новый спелл-чекер позволяют работать с несколькими словарями в каждом языке

12. Новый спелл-чекер помимо привычного интерактивного режима, имеет автоматический режим, в котором все ошибки накапливаются в списке. В этом режиме можно автоматически добавлять часто повторяющиеся незнакомые слова в словарь пользователя и не считать их ошибочными.

13. Новый спелл-чекер показывает вероятные опечатки в ПРАВИЛЬНЫХ словах. То есть показывает те слова, которые могли получиться в результате попадания в соседнюю клавишу, при неправильном порядке ввода букв или при совершении распространенных ошибок. Например "ложка - лодка", "томится - томиться" и т.д.

14. Новый спелл-чекер подсвечивает измененные буквы в предлагаемых вариантах.

15. Новый спелл-чекер имеет улучшенную форму добавления слов в словари пользователя и поддерживает разные словари пользователя для разных языков.

16. Новый спелл-чекер позволяет регулировать разрешение замены буквы "ё" на "е" и использование Британского и Американского написания английских слов.

Другие новые возможности -

17. Цвет фона окна можно задавать через меню <Вид | Цвет фона>

18. Несколько функций добавлено в калькулятор.

19. Добавлена возможность "Поиск в Интернете" (Internet Lookup), позволяющая запускать поиск выбранного слова в разных поисковых системах из контекстного меню по правой кнопки мыши. Можно настроить запуск любых сайтов, например обращение к словарю рифм или к толковому online-словарю. Настройка - в новом системном файле в <Файл | Системные Файлы | Поиск в Интернете>

Программа распространяется как freeware. Создатели не несут ответственности ни за что.

С вопросами и предложениями обращайтесь к автору:

Михаил Морозов,

E-mail: morozov@adelaida.net

Homepage: http://morozov.adelaida.net


Коротко о функциях

К числу функций редактора относятся:

Работа с кодировками:

•	Практически безошибочный перевод транслитерированного текста в кириллицу с использованием мощных алгоритмов искусственного интеллекта.

•	Правильный перевод кириллицы в транслит с учетом русскоязычного написания англоизмов, имен и сокращений.

•	Перекодировка между WIN, KOI, ISO, DOS, MAC. Можно задавать последовательность из нескольких перекодировок.

•	Сохранение версий, получающихся при последовательной смене кодировок (история изменений). Возможность просмотра и возврата к любой версии. Возможность визуального сравнения текущего текста с любой из предыдущих версий.

•	Раскодирование многократно закодированных писем до 6-ти уровней вложенности. В программе используются эвристические оценки для сокращения времени поиска и отсечения бесперспективных ветвей перебора.

•	Перевод писем пришедших в семибитном текстовом виде (например =A7=B0=D9=FF)

•	Восстановление текста из RTF-кода.

•	Перевод из UNICODE в ANSI и обратно.

Обработка текстов

•	Коррекция текста пропущенного через программы распознавания CuneiForm, OmniPage и др. Также исправляет типографские ошибки в любом тексте, находит латинские буквы в русских словах и т.д.

•	Переформатирование старых текстов с жесткими переносами и выравниванием. Убирание переносов внутри слов с использованием спелл-чекера для верификации.

•	Убирание HTML-тегов из текста.

•	Работа со списками и словарями. Сортировка и фильтрация списков.

•	Определение языка текста и исправление смешения русских и латинских букв

Ввод текстов и автоматизация:

•	Работа с русскими текстами в нерусифицированных системах. Обычная и фонетическая раскладки клавиатуры независимые от клавиатурных настроек системы Windows.

•	Функция принудительной русификации всей системы через подмену кодовых страниц. Может использоваться в крайнем случае при работе со старыми программами, которые не поддерживают UNICODE и при работе в абсолютно нерусифицированных системах.

•	Виртуальная клавиатура

•	Таблица символов и возможность создавать выборку из спец.символов, вызываемых по назначаемым клавишам.

•	Авто-переключение раскладки клавиатуры. Забудьте про переключатель языка. Иероглиф определяет на каком языке вы пишете (русский или английский) и сам переключает клавиатуру.

•	Авто-перевод из транслита в кириллицу при вводе текста. Для совсем отчаявшихся.

•	Проверка правописания и автоматическая подсказка при наборе текста.

•	Словарь синонимов и толкований (Тезаурус). Подключается внешний словарь WordWeb, который гораздо мощнее тезауруса в MS Word.

•	Режим редактирования INI-файлов с разбиением на секции. Список секций показывается на отдельной панели.

•	Функция смены регистра букв через команды меню или из списка готовых вариантов.

•	Функция перевода чисел в словесную форму (123 -> сто двадцать три). Поддерживается 6 языков - Русский, Английский, Французский, Немецкий, Итальянский, Турецкий.

•	Режим использования автоматических кавычек типа "елочка"

•	Вставка даты/времени в любых форматах

•	Вставка любых фрагментов текста из заданного списка (например HTML-теги) с возможностью заключения выделенного текста между тегов

•	Редактор теперь позволяет вставку любых объектов - картинок, таблиц Excel и т.д

•	Возможность устанавливать закладки в тексте (bookmarks). Закладки можно сохранять вместе с файлом.

Другие возможности:

•	Иероглиф позволяет исполнять большинство своих функций по назначаемым горячим клавишам прямо в других программах, например переключать раскладку клавиатуры (ghbdtn->привет) в любых программах или осуществлять удаленную де-транслитерацию текста.

•	Экспортирование и импортирование всех установленных в вашей системе текстовых форматов. Если у вас установлен Microsoft Office, то их более пятнадцати.

•	Режим сбора информации, попадающей в буфер обмена (clipboard). В этом режиме любой текст, попадающий в буфер, добавляется к содержимому редактора ("фруктосъемник")

•	Команда "Копировать информацию" заносит в clipboard информацию о выделенном куске текста (позиция, длина, строка, колонка). Очень удобно для получения информации о полях текстовых баз данных.

•	Графический калькулятор, который может строить графики и табулировать функции одного аргумента.

•	Поддержка всех основных возможностей форматирования текста, выравнивание, отступы, Drag&Drop файлов и выделенных блоков, возможность неограниченного отката и повтора на все операции (Undo & Redo) и т.д.

•	Улучшенный диалог Поиска и Замены с возможностями пошагового поиска в обоих направлениях и замены с сохранением регистра букв и подсветкой замен. Уникальная возможность замены по списку с учетом задаваемых правил и условий. Поиск цветовых кодов в тексте. Переход на строку с заданным номером и быстрый поиск предыдущего/следующего вхождения фрагмента текста

•	Автоматическое определение кодировки при открывании простых текстовых документов.

•	Сохранение резервной копии файла

•	Периодическое сохранение промежуточной версии документа для возможности восстановления несохраненных файлов при сбое системы


Почему Иероглиф?

Чем Иероглиф отличается от других редакторов?

Основным достоинством редактора "Иероглиф" и других наших программ является наличие Hieroglyph Translation Engine (в дальнейшем просто "Иероглиф"). Иероглиф - это мощный блок функций осуществляющих осмысленную конверсию между разными стилями написания слов. Если взять к примеру русское слово "щучий" и попробовать написать его разными способами, то можно получить такие варианты: щучий, shuchii, tshuchiy, tschuchy, shuchiy, LIIy4uu, LIIychiy и т.д. Число вариантов написания некоторых слов может быть очень большим. Но несмотря на это, человек легко читает слова в любом написании. Обычный редактор конечно же не может увидеть в этом наборе букв слово. Иероглиф - может!!!

Как это делают другие

Другие программы перекодировки из транслита в кириллицу используют длинные грамматики, составленные человеком и описывающие аномалии перевода. Например последовательность sh может переводиться как "ш", "щ" и "сх" в зависимости от положения в слове и окружающих букв. Эти особенности анализируются и записываются в виде правил и исключений. По мере появления новой информации грамматика пополняется новыми правилами. Очевидный недостаток такого подхода - это необходимость помнить предыдущие правила в грамматике, чтобы новые правила не конфликтовали со старыми и не возникало двусмысленных переводов. Другой недостаток - грамматика с каждым дополнением становится лучше и лучше но никогда не достигает идеала. При этом она сильно растет и это сказывается на скорости обработки текста. Представьте себе просмотр нескольких тысяч правил на каждом слове и вы поймете почему процесс может быть достаточно медленным. Конечно есть алгоритмы оптимизации поиска, позволяющие добиться приемлемой скорости, но сам подход к решению задач трудно назвать универсальным. Ведь разработка грамматики становится целым проектом для каждого нового языка.

Как это делает Иероглиф

Уникальность алгоритмов Иероглифа состоит в копировании интеллекта человека при распознавании образа. Иероглиф как и человек оперирует тремя понятиями -

1. Он знает, как выглядят и пишутся буквы.

2. Он знает какие сочетания букв имеют смысл в каком языке.

3. Он знает какие слова есть в каких языках.

Если рассматривать эти три составляющие по отдельности, то первая представляет из себя около 200 коротких правил описывающих 33 буквы русского алфавита в разных способах написаниях, второе - это бинарный файл размером около 30 КБ полученный на основе автоматического анализа большого числа разных текстов. В данном случае была взята Библиотека Мошкова - около миллиона слов. Только вдумайтесь - больше чем 1 Гигабайта информации оказалось сжато в 30 килобайт. В интеллекте человека происходит что-то подобное. Если у вас спросить может ли буква "м" быть в слове между буквами "ш" и "щ" вы не станете перебирать в уме все слова языка. Вы сразу знаете ответ. Так же работает и Иероглиф. Он моментально определяет какие слова могут соответствовать написанию, а какие нет. Например слову schuchy  может соответствовать слова "щучий" и "шучу", а слово "сцхусху" явно не вариант. Человеку нужны миллисекунды, чтобы знать это. У Иероглифа это занимает не больше. Но человек определяет реальность слов не только по возможности их произношения. Для проверки выбора человек привлекает свое знание языка. Для Иероглифа знание языка заменяет стандартный спелл-чекер, который подсказывает, есть ли такое слово в языке. Таким образом Иероглиф точно копирует весь процесс мышления человека при обработке образа и практически не требует дальнейшей настройки и улучшения грамматики.

Неужели все так просто?

Процесс перевода перестает быть простым, когда в тексте начинают встречаться слова на другом языке, разные символы, сокращения, имена файлов, формулы, римские цифры и прочие неучтенные спелл-чекером аномалии. Здесь вступают в работу другие алгоритмы, помогающие отфильтровать такие аномалии и оставлять их непереведенными. Для отлавливания английских слов тоже используется спелл-чекер.

Пытливый читатель может спросить - а что делать, если слово есть и в русском и в английском языке? Например слово "net" означает в английском "сеть". Переводить его в русское слово "нет" или оставить как есть? Здесь на помощь приходит анализ контекста фразы. Выясняется какие слова стоят вокруг и делает правильный выбор.

Вот пример перевода текста из транслита в кириллицу, сделанный обычными методами и с привлечением Иероглифа:

Исходный текст:

Privet! Ia tut nedavno nashel ves'ma prikolnuu programmy Hieroglyph (http://www.adelaida.net/hieroglyph). Ona pozvoliaet perevodit' teksty iz translita v cyrillitsu virtually flawless

Текст после перевода обычным переводчиком:

Привет! Я тут недавно нашел весьма приколнуу программы Хиероглипх (хттп://ввв.аделаида.нет/хиероглипх). Она позволиает переводить тексты из транслита в цыриллитсу виртуалли флавлесс

Текст после перевода Иероглифом:

Привет! Я тут недавно нашел весьма прикольную программу Hieroglyph (http://www.adelaida.net/hieroglyph). Она позволяет переводить тексты из транслита в кириллицу virtually flawless

А в чем, собственно, универсальность?

Иероглиф является мощным инструментом не только для перевода из транслита в кириллицу, но и позволяет работать над исправлением текстов испорченных ошибками набора или распознавания текста. Метафора человеческого интеллекта опять приходит в голову. Человек, видя слово "iiустота", моментально определяет, что двойная буква i в начале на самом деле русская буква "п", а в слове "прадва" буквы "д" и "в" поменяны местами. Аналогичный принцип "мышления" Иероглифа и здесь оказывается очень кстати.

Программа AfterScan (www.afterscan.com) включает в себя огромный опыт специалистов помноженный на гибкость и универсальность алгоритмов Иероглифа. Даже первая бета-версия программы позволила легко найти в словаре ошибки не замеченные многочисленными корректорами. Другой пример: на распознанном программой CuneiForm тексте длинной в 10 страниц, AfterScan делает больше 3200 исправлений. И это после того, как CuneiForm пропустила текст через свои алгоритмы верификации и сравнила все со своим словарем. Представьте, что вы исправляете эти ошибки руками. Пусть исправление одной ошибки занимает 5 секунд. Помножьте 3200 на 5 и получите почти 5 часов напряженной работы и нечеловеческой концентрации. А сколько ошибок будет просто пропущено?

Если вам нужны профессиональные средства обработки текстов - обязательно посетите страничку программы AfterScan.

А можно пример?

Вот фрагмент сосканированного и распознанного текста, после обработки программами AfterScan Lite и AfterScan Professional. Слова с ошибками и старо-русские слова выделены цветом и толщиной:

Популярная Библейская Эициклопедiя отв^чаетъ почти на большую часть вопросовъ библейской археологiи, архитектуры, астрономiи, географiи, бiографiи библейскихъ д^Ьятелей, ботаники, священной библiографiи, военной науки, зоологiи, землед^лiя, искусствъ, минералогiи, метеорологiи, медицины, математики, нумизматики, педагогики, физики, этнографiи и друг. Богосдовскiе термины, за исключенiемъ терминовъ строгобибдейскаго значенiя, опущены. Объясненiе подробностей библейскихъ терминовъ касается какъ каноническихъ, такъ и неканоническихъ книгъ Свящ. Писанiя, съ тбмъ однако что объясненiя сихъ посл^днихъ отдичаются своею значительною краткостiю сравнительно съ первыми.

Вот этот текст после обработки Иероглифом:

Популярная Библейская Эициклопедия отвечает почти на большую часть вопросов библейской археологии, архитектуры, астрономии, географии, биографии библейских деятелей, ботаники, священной библиографии, военной науки, зоологии, земледелия, искусств, минералогии, метеорологии, медицины, математики, нумизматики, педагогики, физики, этнографии и друг. Богосдовские термины, за исключением терминов строгобибдейского значения, опущены. Объяснение подробностей библейских терминов касается как канонических, так и неканонических книг Свящ. Писания, с тем однако что объяснения сих последних отдичаются своей значительною краткостию сравнительно с первыми.

и наконец, после обработки AfterScan Professional

Популярная Библейская Энциклопедия отвечает почти на большую часть вопросов библейской археологии, архитектуры, астрономии, географии, биографии библейских деятелей, ботаники, священной библиографии, военной науки, зоологии, земледелия, искусств, минералогии, метеорологии, медицины, математики, нумизматики, педагогики, физики,этнографии и друг. Богословские термины, за исключением терминов строгобиблейского значения, опущены. Объяснение подробностей библейских терминов касается как канонических, так и неканонических книг Свящ. Писания, с тем однако что объяснение сих последних отличаются своей значительной краткостью сравнительно с первыми.

И ВСЕ ЭТО АВТОМАТИЧЕСКИ!!!

В данном примере приведен фрагмент текста в старо-русской орфографии. На самом деле AfterScan может подчистить любой текст, даже многократно проверенный корректорами. AfterScan видит ошибки не заметные для глаз - использование латинских букв с одинаковыми начертанием в русских словах, лишние пробелы, несоответствия знаков препинания типографским нормам и т.д.

Где еще применяются механизмы Иероглифа

Программа IRC-3PO осуществляет синхронный перевод сообщений в сети IRC. Читайте об уникальных возможностях этой программы на ее страничке http://www.afterscan.com/irc/


Установка и настройка

Проблемы со стандартными библиотеками

Иероглиф использует некоторые файлы системы Windows, несовместимость версий которых, вызвала проблемы у ряда пользователей. Проблемы выражались в появлении ошибки типа "Access violation..." при запуске программы или в пропадании некоторых кнопок с панелей управления. В первой ошибке виновата несовместимость или отсутствие файла RICHED20.DLL. Во второй - файл COMCTL32.DLL.

Начиная с версии 3.7, Иероглиф полностью поддерживает возможности  RichEdit 3.0, который впервые появился в Windows 2000 и Windows ME. Если у вас Windows 95 или 98, то мы рекомендуем установить эти компоненты перед установкой Иероглифа. Вы можете скачать работающие версии этих библиотек с домашней странички программы.


Работа с кодировками

В этой главе описываются возможности Иероглифа по перекодированию текстов и распознаванию различных кодировок. Особое внимание уделяется переводу текста из транслита в кириллицу. Иероглиф блестяще справляется с этой нетривиальной задачей. Высокой скоростью и точностью отличается и автоматический поиск вложенных кодировок. Функции ручного перевода между разными русскими кодировками тривиальны, но удобны. А универсальный декодер семибитных кодировок поможет вам раскодировать испорченную почту.


Перевод из транслита в кириллицу и наоборот
Транлитерация и де-транслитерация

Транслитерация: перевод кириллицы в транслит

Меню: <Конверсия | Транслитерация>

Эта простая операция переведет кириллицу в латинизированное написание (привет->privet). В отличие от обычных конвертеров, производящих побуквенные замены, Иероглиф подбирает наиболее читабельные сочетания букв. Например слово "сцена" обычным редактором будет переведено как "stsena", а Иероглиф выдаст слово "scena", переведя "ц" не как обычно в "ts", а в "c". Кроме того Иероглиф правильно заменяет англоизмы и русифицированное написание многих имен, названий и терминов (например имя Джеймс будет переведено в James, а не в Dzheims, а сокращение США - в USA, а не SShA). Список таких исключений из правил транслитерации можно отредактировать в файле <Файл | Системные файлы | Исключения транслитерации>

Де-транслитерация: перевод транслита в кириллицу

 Меню: <Конверсия | Де-транслитерация>

Операция перевода транслита в кириллицу (privet->привет) является более сложной задачей, чем транслитерация. Поскольку одна и та же латинская буква может представлять разные русские буквы в словах, однозначный перевод становится невозможен. Например буква i в слове bistryi (быстрый) обозначает одновременно "ы" и "й". Подробнее о проблемах де-транслитерации и о том, как Иероглиф их решает можно прочитать в главе "Почему Иероглиф".

При де-транслитерации появляется окно диалога в котором можно выбрать тип текста и управлять процессом перевода. Подробнее о режимах перевода, типах текста, ошибках и цветовой пометке читайте в описании диалога де-транслитератора

Де-транслитерация может осуществляться автоматически при вводе текста. Для этого надо включить соответствующий режим в меню <Правка | Автоматизация ввода | Авто де-транслитерация>

Функции транслитерации и де-транслитерации работает на выбранном тексте, если часть текста помечена в редакторе, или на всем тексте, если ничего не помечено.

Обе команды можно исполнять по горячим клавишам в любой другой программе. Читайте об этом в разделе Внешние функции.


Диалог де-транслитератора

Диалог позволяет выбрать режим работы - автоматический или ручной.

При ручном переводе, программа будет предлагать вам варианты перевода в случаях, когда слово не может быть распознано и переведено. В этом случае пользователю предлагаются разные варианты слова и предоставляется возможность ввести свой перевод, а также добавить слово в словарь, чтобы в будущем оно переводилось автоматически.

В автоматическом режиме диалог де-транслитератора перестает появляться на нераспознанных словах. Процесс полностью автоматизируется и проходит без вмешательства пользователя. При этом нераспознанные и сложные слова помечаются разными цветами, для удобства дальнейшего поиска и проверки.

Вы также можете выбрать тип переводимого текста:

Транслитерированный Русско-Английский текст

Перевод осуществляется с учетом возможности появления английских слов. Эта опция предпочтительна в большинстве случаев, особенно при переводе электронной почты и текстов с разными техническими терминами. Анализ английских слов необходим, поскольку многие транслитерированные русские слова могут являться английскими словами. Например слово "net" есть и в английском ("сеть") и в русском языке ("нет"). Перевод таких слов решается путем анализа соседних слов. Таким образом фраза "u nas net vody" будет переведена как "у нас нет воды", а фраза "we are caught in this net" останется непереведенной.

Транслитерированный Русский текст

Используйте эту опцию для заведомо русских текстов. Предыдущая опция может оставить часть текста непереведенной в случаях, когда несколько слов с двойным значением идут подряд. В таких случаях фраза будет распознана как английская. Например следующая фраза не будет переведена в режиме работы с Русско-Английским текстом - "...no net do six por ...". Все слова в этой фразе, кроме последнего, имеют как русское, так и английское значение.

Текст с адаптивной кириллицей

Адаптивная кириллица - это использование латинских символов и цифр, похожих на русские буквы. Например слово "почтальон" в обычной транслитерации будет выглядеть как "pochtal'on", а в адаптивной кириллице - "no4TaJIbOH". Возможно также смешанное написание слов - "4etverg", "bloxa" и так далее. Чаще всего такие тексты встречаются в протоколах IRC-чатов. Опция перевода адаптивной кириллицы работает медленнее других, но зато успешно справляется с самыми ужасными текстами.

Таким образом, диалог позволяет легко достичь нужной степени автоматизации перевода в зависимости от типа переводимого текста.


Цветовая пометка

Цветовая пометка переведенного текста

После автоматического перевода, слова могут быть помечены следующими цветами:

 Черный - слово не переведено потому что уже является правильным словом в русском или английском языке.

 Темно-синий - найден единственный правильный перевод. Слово переведено без сомнений

 Голубой - найдено более одного правильного перевода, например слово "bistro" может быть переведено как "бистро" и как "быстро". В автоматическом режиме используется  наиболее вероятный вариант и слово помечается голубым цветом. По окончании перевода можно легко увидеть и, если нужно, исправить все подобные слова.

 Вишневый - перевод требует проверки. Возможно побуквенная попытка перевода неизвестного слова.

 Зелено-голубой - сокращение или аббревиатура

 Красный - слово не переведено, потому что не распознано. Возможно синтаксическая ошибка или бессмысленный для языка набор букв.


Кодировки

Существует 5 основных кодировок для представления русской кириллицы:

•	WIN (cp1251) - кодировка используемая в Microsoft Windows

•	KOI (KOI-8r) - считается стандартом "де-факто" русской кодировки в Интернете

•	DOS (Alt-866) - кодировка использовавшаяся в MS DOS

•	ISO (ISO-8859.5) - редко-используемый стандарт

•	MAC (Macintosh) - стандарт компьютеров Макинтош.

При получении электронной почты, в зависимости от того, на каком компьютере было написано письмо, оно может прийти в любой из описанных кодировок. Для перевода кодировки включите панель <Вид | Панели | Конверсия>. Перевод между кодировками осуществляется при помощи выпадающих списков "исходной" и "конечной" кодировки и кнопок перевода в обе стороны. Через меню <Конверсия | Быстрое преобразование из/в Win1251> доступен быстрый перевод между кодировкой Win1251 и всеми остальными.

Помимо простых перекодировок, также возможен автоматический поиск вложенных кодировок и работа с последовательностями перекодировок. Читайте об этом в главе "Автоматический поиск кодировки"

Перекодировка также возможна по горячим клавишам в других приложениях (см. раздел "Внешние функции")


Автоматический поиск кодировки

Часто при получении электронной почты, простого перевода из одной кодировки в другую бывает недостаточно для раскодирования письма. Почтовые сервера пересылающие письмо иногда принудительно кодируют его в определенную кодировку. В результате получаются двойные и тройные кодировки, перевести которые вручную крайне сложно.

Для раскодирования таких многократно закодированных писем есть опция автоматического поиска нужного преобразования кодировок, вызываемая командой <Конверсия | Декодер Кириллицы>

В диалоге есть возможность задать простую перекодировку, последовательность перекодировок или же автоматический поиск последовательности кодировок. Авто-поиск работает на глубину до 6-ти уровней. При поиске кодировки, пользователю предъявляются варианты перекодировок более-менее напоминающие русский текст. Пользователь может остановить поиск, либо продолжить его.

В отличие от других программ, которым для успешного поиска кодировки необходимо, чтобы объем переводимого текста был не менее 200-300 символов, алгоритм реализованный в "Иероглифе" может раскодировать даже одно слово. Обычные перекодировщики используют статистическую таблицу частоты появления букв в русском языке для определения момента достижения правильного результата. Короткие тексты дают недостаточно информации для статистического анализа и алгоритм не может отличить русский текст или же наоборот принимает за русский текст весьма нерусские наборы букв.

Алгоритмы Иероглифа проверяют слова на их произносимость и соответствие правилам написания слов в русском языке. Отсюда - высокая точность и скорость поиска. Улучшение в скорости происходит от того, что многие промежуточные варианты перекодировок порождают заведомо неперспективные наборы букв не попадающие в диапазон букв других кодировок. Отсечение таких вариантов позволяет резко сократить число итераций и время перебора. В результате "Иероглиф" просматривает 6 уровней вложенности за то время, за которое программы, реализующие полный перебор, едва успевают просмотреть 4 уровня. Причем каждый следующий уровень усложняет перебор экспоненциально, то есть даже проход 5-ти уровней оказывается чересчур долгой задачей для алгоритмов полного перебора.

Автоматическое определение кодировки при открывании файла

В диалоге <Файл | Параметры> вы можете включить опцию <Открывать в кодировке WIN>. Эта опция работает только для TXT-файлов. Если файл был в другой кодировке, произойдет автоматическое определение кодировки. Глубина определения вложенных кодировок ограничена тремя уровнями.


Перевод семибитных кодировок

Существует ряд стандартов по которым письма кодируются для пересылки в семибитную кодировку. Основная задача таких стандартов - представить любое письмо буквами только латинского алфавита, а также цифрами и некоторыми символами. Название "семибитная кодировка" связано с тем, что для представления кодов латинских букв и цифр требуется только семь бит, т.е 128 символов (так называемая первая половина кодовой таблицы). Использование восьмого бита расширяет таблицу до 256 символов. Во вторую половину кодовой таблицы попадают специальные символы других алфавитов и кириллица. Использование расширенной части кодовой таблицы запрещено при пересылке по сетевым протоколам. Поэтому и существуют стандарты семибитной кодировки.

Большая часть из них сводится к представлению кодов русских букв не в числовом а в текстовом виде. Например буква "А" может быть записана как "C0", а само письмо иметь вид ...=C0=FE=D7=E6...

Обычно почтовая программа сама раскодирует такие письма, но иногда случается натолкнуться на фрагмент такого письма в нераскодированном виде. Чаще всего это случается при потере заголовка письма, по которому почтовый клиент определяет формат письма.

Другой случай использования кодов в текстовом виде - это всем известный стандарт RTF. Русские буквы в RTF-файле записываются в виде последовательностей вида ...\'65\'32'...

Для раскодирования таких текстов и существует функция <Конверсия | Универсальный Декодер>. Кроме уже заданных настроек для некоторых общераспостраненных форматов, вы можете сами задать новый вид кодировки через определение разделителей (префикса, суффикса) и системы счисления кода (шестнадцетиричная или десятичная).


История изменений

История изменений позволяет сохранять варианты текста в процессе его перекодировки. Каждый шаг преобразования запоминается и доступен для просмотра через Менеджер Истории в меню <История | Менеджер Истории>.

Текст любой версии может быть помещен рядом с текущей версией текста при помощи команды <Вид | Панель Истории Изменений>. Панель Истории имеет движок изменения размеров и может находиться с любой стороны от окна редактора в зависимости от установок в меню <История>

Вы можете скопировать текущий документ в окно истории через пункт меню <История | Скопировать из Редактора>. Это бывает нужно, если вы хотите видеть копию исходного текста в процессе исправления текущего документа, например при переводе текста на другой язык.

Можно взять любую версию в качестве начальной и начать работать с ней как с новым файлом. Для этого используйте пункт меню <История | Открыть в Редакторе>. Также можно сохранять версии на диск в виде текстовых файлов.

Для работы с Историей предусмотрена специальная панель инструментов <Вид | Панели | История>. На панели размещены выпадающий список версий, кнопки загрузки версии из редактора и обратно в редактор, сохранения на диск, а также полоска просмотра текста версии. При перемещении курсора в окне редактора, в полоске просмотра показывается текст выбранной версии в той же позиции. Текст в окне просмотра версии также прокручивается при перемещении курсора в основном окне редактора.


Работа с русским текстом

В этой главе описаны основные приемы работы с русскими текстами в нерусифицированных системах. Иероглиф предоставляет возможность набирать и редактировать русский текст даже если в системе не установлены драйвера русской клавиатуры. Подробно описываются существующие проблемы русификации и методы их решения.


Проблемы русификации

Проблема русификации компьютеров стоит достаточно остро. Многие пользователи работают за рубежом и не имеют возможности установить русскую клавиатуру или русские шрифты на свой рабочий компьютер. Другие просто не умеют. Огромное число людей на Интернете вынуждены использовать транслит для ввода русских текстов. Мы вкратце рассмотрим процесс русификации систем Windows 95, 98, ME и 2000 и расскажем о том как Иероглиф может помочь тем, у кого нет возможности русифицировать свой компьютер.

Этапы русификации

Русификация компьютера состоит из установки шрифтов, локализации, и установки драйвера клавиатуры. В зависимости от того что установлено, а что нет, мы наблюдаем разную степень русификации компьютера. Скажем с установленными русскими шрифтами уже можно читать русские документы, но без драйвера клавиатуры и правильной локализации нельзя их редактировать. Ситуация осложняется тем, что разные системы поддерживают иностранные языки разными способами. Чтобы лучше понимать проблемы русификации, сделаем небольшой экскурс в историю.

Появление UNICODE

В системе Windows 3.1 поддержка иностранных языков практически целиком определялась выбором шрифта. Шрифт в стандарте ANSI, как известно, состоит из двух кодовых страниц. В первой кодовой странице содержатся символы с кодами от 0 до 127. Это латинские буквы, цифры, знаки препинания, скобки и другие значки, которые вы видите на клавиатуре. Эта часть оставалась неизменной для всех шрифтов и остается неизменной и по сей день.

Для поддержки иностранных языков использовалась вторая кодовая страница с кодами символов от 128 до 255. Эта часть различалась в шрифтах для разных языков. Одним шрифтом поддерживались практически все европейские языки. Но для поддержки русского языка нужен был другой шрифт, в котором специальные символы европейских языков уже отсутствовали, поскольку на их месте стояли русские буквы. Таким образом одним шрифтом нельзя было одновременно написать, к примеру, русские и французские слова. Это изменилось с приходом UNICODE - стандарта представления многоязычных шрифтов. В UNICODE-шрифте содержится не две, а гораздо больше кодовых страниц. Для каждого языка отведена своя кодовая страница и слова на всех языках могут быть набраны одним шрифтом.

Локализация

Все было бы хорошо и просто, но несколько кодовых страниц уже не помещались в 256 символов и буквы уже не могли быть представлены одним байтом. Теперь на представление каждой буквы в тексте отводилось 2 байта. Например русская буква "А" имела код 1040, а не 192 как раньше. А под кодами меньше 256 были оставлены символы западно-европейских языков. А поскольку ядро системы Windows 95 все еще работало с однобайтными буквами, возникла необходимость перевода однобайтных букв в двухбайтные для правильного представления текстов на иностранных языках. Так возникло понятие локализации (locale). Теперь для каждой буквы в тексте нужно было задавать ее язык. Если язык был европейским, то символ 192 отображался как одна из букв европейских языков, а если текст был обозначен как русский, то происходило преобразование (маппинг) буквы 192 в символ 1040. За это преобразование отвечал драйвер NLS (national language support). Драйвер NLS указан для каждого языка в реестре -

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Codepage

Вы можете открыть реестр программой Regedit и найти этот ключ. Вы увидите там строчки вида 1251=cp_1251.nls, 1252=cp_1252.nls. Числа 1251, 1252 и т.д. обозначают язык: 1252 - западно-европейские языки, 1251 - русская кириллица.

Чтобы установить NLS-драйвер для русского языка в Windows 95, нужно при установке системы указать поддержку русского языка и кириллицы. Начиная с Windows 98 все системы автоматически поддерживают многоязычность и все NLS-драйвера устанавливаются автоматически.

Вы уже догадываетесь что будет, если NLS-драйвер для кириллицы не установлен. Символ 192 не будет преобразован русскую букву "А" с кодом 1040, а останется символом алфавита какого-то европейского языка. Типа буквы "о" с черточкой или еще какой-нибудь кракозябры. Эта картина знакома всем, кто открывал русский текст в нерусифицированной системе - сплошные буквы с умлаутами и черточками.

Шрифты

Иногда, впрочем, вместо текста мы видим пустые квадратики или вертикальные черточки. Это уже совершенно другая проблема. В данном случае локализация настроена правильно, но используемый шрифт либо не содержит нужной кодовой страницы, либо не поддерживает UNICODE вообще. NLS-драйвер преобразует символ 192 в символ 1040, где должна лежать русская буква "А", а там - пусто. Вот он и рисует пустой квадратик или вертикальную черточку. Поэтому проблема правильного отображения русских текстов должна решаться на двух уровнях. Нужно иметь и шрифты с поддержкой UNICODE и правильно настроенную локализацию.

Самый дотошный читатель может возразить - я, мол, у себя в Windows 95 просто устанавливал русский шрифт и русский язык показывался нормально. Это действительно возможно. Это означает, что шрифт был не UNICODE и во второй половине кодовой таблицы (символы 128-255) были прошиты русские буквы. При этом NLS-драйвер тоже не был установлен, поэтому символ 192 оставался символом 192 и показывался в текущем шрифте как русская буква "А". Этот возможно в Windows 95, но в Windows NT поддержка UNICODE осуществляется на уровне ядра системы и такой фокус не проходит. Все строки в Windows NT представлены двух-байтными буквами и русская буква "А" изначально имеет код 1040 и будет правильно показываться только при наличии UNICODE-шрифта.

Вы скажете, а зачем тогда вообще нужен NLS-драйвер в Windows NT? Ведь все буквы изначально представлены двухбайтными кодами и никаких преобразований не требуется. Вот тут мы и подходим ко второй части русификации системы - русификации клавиатуры!

Клавиатура

Со шрифтами мы разобрались - мы или предоставляем NLS-драйвер для перевода букв в нужную кодовую страницу (Windows 95-98) или же просто храним все буквы в расширенной двухбайтном формате (Windows NT, 2000). А как быть с клавиатурой? Ведь когда мы набираем русский текст, клавиатура выдает те же самые символы из второй половины кодовой таблицы, где в UNICODE-шрифте находятся символы европейских языков! А значит нам опять нужен NLS-драйвер, чтобы превращать эти символы в русские буквы с кодами 1040...1072.

А чтобы система знала NLS-драйвер какого языка использовать, нужно установить в систему соответствующую раскладку клавиатуры. Для ввода русского текста нам понадобится (сюрприз! сюрприз!) русская раскладка клавиатуры, устанавливаемая в диалоге Control Panel -> Keyboard -> Input Locales.

Системные шрифты

В разговоре о шрифтах мы упустили один важный момент. В системе Windows есть два вида шрифтов. Одни - это масштабируемые (TTF), другие - это системные шрифты, которые используются в элементах интерфейсов программ (меню, диалоги и т.д.) Поэтому если вы используете программы с русским интерфейсом, вам необходимы русские системные шрифты. В Windows 95-98 русские системные шрифты устанавливаются если при инсталляции указать что основной язык будет Русский. В Windows NT и 2000 русские системные шрифты можно установить в любое время через диалог Control Panel -> Regional Options. Нужно просто выбрать там Русский язык и пометить галочкой опцию "Use as default ...". В Windows 2000 нужно выбрать Cyrillic в списке языков и нажать на кнопку "Set Default". В общем, идея понятна: нужно сделать Русский основным языком системы.

Обобщение

Итак, чтобы система поддерживала русский язык полностью, нужно иметь:

1. Русские системные шрифты

2. TTF шрифты с поддержкой UNICODE

3. Настроенные NLS-драйвера

4. Русскую раскладку клавиатуры

Проще всего поддержка русского языка реализуется в Windows 2000. Сложнее всего - в Windows 95, особенно если у вас не Pan European версия. Редактор Иероглиф специально ориентирован на работу с русскими текстами и позволяет работать с кириллицей даже в нерусифицированных системах. Читайте об этом в следующей главе.


Работа в нерусифицированных системах

Ввод русского текста

Иероглиф позволяет вводить русский текст в системах с ненастроенной локализацией и без установленного драйвера клавиатуры. В меню <Правка | Раскладка клавиатуры> можно выбрать следующие раскладки:

•	Системный Английский - обычная английская раскладка, которая устанавливается в любой системе по умолчанию

•	Системный Русский - системная русская раскладка, если она установлена в Control Panel -> Keyboard -> Input Locales.

•	Эмулированный Русский - внутренняя русская раскладка Иероглифа

•	Фонетический Русский - внутренняя русская раскладка Иероглифа с фонетическим расположением букв

Последние две раскладки должны работать даже в совершенно нерусифицированных системах. Единственное условие - это наличие  UNICODE-шрифтов с русской кодовой страницей. Основные шрифты Arial, Courier, Times, Verdana, Tahomа и другие, которые устанавливаются вместе с системой Windows, удовлетворяют этому условию.

Используемая для эмуляции кодовая страница устанавливается в диалоге <Инструменты | Конверсия UNICODE>. В этом же диалоге можно произвести конверсию текста после вставки из clipboard или после открывания файла с русским текстом в нерусифицированной системе.

Открывание русских файлов

Если при открывании файла с русским текстом вы видите специальные буквы западноевропейских языков с умлаутами, ангстремами и т.д., значит текст не был правильно перекодирован в UNICODE и остался в ANSI. Диалог <Инструменты | Конверсия UNICODE> позволяет правильно перекодировать ANSI-текст в UNICODE и наоборот. В отличие от механизмов Windows, которые определяют текущую кодовую страницу по системным настройкам, Иероглиф позволяет жестко указать в какой язык нужно перенести символы при помощи выпадающего списка "Кодовая страница".

Для TXT-файлов вы можете включить опцию <Открывать в русском UNICODE> в диалоге <Файл | Параметры>. Тогда преобразование ANSI -> UNICODE будет автоматическим.

Вставка русского текста из clipboard

Кроме обычной вставки, Иероглиф предоставляет вам функцию <Правка | Вставить Русский текст>. Название на самом деле лишь частично отражает функциональность этой операции. Одна из задач этой функции - убирать форматирование из текста перед вставкой. Вы будете часто пользоваться этой функцией если нужно скопировать текст из Internet Explorer. Если воспользоваться обычной операцией вставки, то вместе с текстом в редактор попадут все цвета, таблицы, и шрифты, причем в сильно искаженном виде.

Но кроме очистки текста от ненужного форматирования, эта функция также позволит вам копировать русский текст в системе без поддержки кириллиц.  Результат работы этой функции будет отличаться от системы к системе в зависимости от настройки кириллицы и UNICODE.

Принудительная русификация всей системы

Если вы хотите воспользоваться старой программой, которая был ориентирована на работу с ANSI-шрифтами и "не видит" кириллицу в UNICODE-шрифтах, вы можете включить опцию принудительной русификации всей системы.

Опция включается в диалоге <Файл | Параметры> и требует перезагрузки компьютера. Не включайте эту опцию, если вы работаете с иностранными языками, использующими специальные буквы с умлаутами и т.д. (французский, немецкий...) Иначе все эти специальные буквы будут показываться символами русского алфавита.


Виртуальная клавиатура

Виртуальная клавиатура вызывается из меню <Инструменты | Виртуальная клавиатура> и позволяет вводить буквы при помощи мышки. Щелчком правой кнопки мыши на виртуальной клавиатуре вызывается меню выбора раскладки клавиатуры. Если у вас на клавиатуре нет русских букв и вы не владеете слепым методом печати, то на виртуальной клавиатуре можно подсмотреть какие буквы где расположены и даже попытаться вводить короткие сообщения.


Обработка текстов

В этой главе описаны возможности Иероглифа по обработке текстов.


Переформатирование текстов

Многие старые тексты содержат в себе элементы жесткого форматирования, мешающие нормальному редактированию в современных редакторах. К числу таких элементов относятся:

1. Переносы с разрывом слов.

2. Жесткие переносы в конце каждой строки.

3. Использование последовательности пробелов для обозначения красной строки.

4. Выравнивание текста по ширине путем вставления дополнительных пробелов между словами.

Функция переформатирования позволяет удалить эти пережитки прошлого и придать тексту удобный для редактирования и форматирования вид.

Диалог содержит следующие опции:

Убирать жесткие переносы строки

Опция убирает жесткие переносы строк внутри абзацев. Границы абзаца определяются по таким признакам, как красная строка, пустая строка, дефис в начале строки (диалог) и т.д.

Склеивать слова с переносами

Опция убирает все переносы внутри слов, соединяя разорванные слова, причем делает это осмысленно, сверяясь со словарем. То есть слова, которые пишутся через дефис, останутся неизмененными. Иногда, в сложных случаях, программа может засомневаться, например, когда перенос вставлен в слово с дефисом. В этих случаях сомнительное тире будет проигнорировано и оставлено неизмененным. Подобные случаи можно выделить цветом, выбрав опцию <Помечать пропущенное>. Другая опция <Помечать исправленное> позволяет выделять цветом "соединенные" слова для последующей проверки.

Удалять лишние пробелы между слов

Эта опция убирает лишние пробелы между словами, вставляемые старыми редакторами для выравнивания текста по ширине. Не включайте эту опцию, если в тексте есть намеренная отбивка пробелами, например таблицы.

Приводить несколько колонок в одну

Эта опция включает режим поиска многоколоночного текста (2 или 3 колонки). Колонки разделяются символом TAB, например:

Это первая ко	Это вторая ко

лонка текста	лонка текста

Без опции определения колонок, этот текст будет приведен к виду "Это первая ко-Это вторая ко-лонка тексталонка текста", т.е. произойдет склеивание по строкам. После включения опции переформатирования колонок, колонки будут помещены одна за другой - "Это первая колонка текста. Это вторая колонка текста".

Удалять значки цитирования E-mail

Эта опция удаляет значки цитирования ('>' или '|') в начале строки. При каждом запуске функции переформатирования, удаляется один уровень цитирования.

Разбивка абзацев

После того, как новые абзацы распознаны и сформированы, эта опция определяет оставить существующую разбивку, либо заменить ее на один возврат каретки или же заменить ее на два возврата каретки (добавить пустую строку перед абзацем).

ВНИМАНИЕ: если нажать кнопку "Опции" и отключить сохранение стилей в тексте, а также отключить опции цветовой пометки, то процесс переформатирования будет происходить в несколько раз быстрее.


Исправление ошибок распознавания и опечаток

Эта функция вызывает командой меню <Инструменты | OCR Чистка>. Функция автоматически находит и исправляет ошибки в

1. Текстах после сканирования и распознавания

2. Текстах с опечатками после ручного ввода

3. Текстах из электронных Интернет-библиотек

4. Текстах в старо-русской орфографии (с частичным приведением к современной)

Если вам нужен более профессиональный инструмент для обработки и исправления текстов, мы рекомендуем использовать программу AfterScan (www.afterscan.com)


Исправление смешанных букв

Команда <Инструменты | Исправить смешанные буквы> находит в тексте слова в которые случайно попали похожие по написанию буквы другого языка. Эта ошибка часто возникает при сканировании и распознавании текстов и незаметна для глаз. Например русская буква Н (эн) может быть заменена на латинскую букву H (эйч).

Программа может сама определить на каком языке должно быть слово, или же вы можете жестко указать перевод в кириллицу или латиницу по вашему усмотрению.

Отдельным случаем являются двусмысленные слова, которые полностью состоят из взаимозаменяемых букв, например слово OKEAH может быть написано как русскими, так и целиком латинскими буквами. При этом в слове не будет смешанных букв, но перевести его надо. Поэтому вы можете выбрать опцию пометки и/или перевода таких двусмысленных слов в заданный язык.


Диалог поиска и замены

Диалог поиска и замены предлагает удобный способ навигации по найденным элементам при помощи кнопок First, Last, Next и Prior. Поиск может работать как на всем документе (опция <Весь документ>), так и на выбранном участке (опция <Пометка>). Вы можете изменить границы выбранной области, не закрывая окна Поиска, путем пометки нового участка текста.

Также у вас есть возможность осуществлять замены по списку. Фильтр имеет очень простой формат: строка поиска и строка замены, разделенные знаком "=". Каждая строка фильтра должна содержать один элемент "поиск=замена". Фильтры могут быть сохранены на диске в отдельных файлах и загружены по мере надобности.

При замене текста возможен режим <Сохранять регистр>, в котором сохраняется изначальный регистр заменяемых букв.

В диалоге также предусмотрена опция пометки произведенных замен цветом. Разумеется, замены, которые привели к удалению букв или замене на пробелы помечены не будут.

Помимо поиска и замены текста, диалог предоставляет возможность работать аналогичным образом с атрибутами текста. Опции под закладкой <По атрибутам> позволяют искать текст определенного цвета и производить с ним разные операции от изменения цвета до удаления слов.

Все варианты диалога поиска вызываются из меню <Поиск>

Синтаксис команд замены по списку

Команда "Замена по списку" предоставляет возможность поиска и замены большого числа текстовых элементов и с учетом простых условий. Список команд представляет собой правила вида найти=заменить | [+включая] [-исключая]. Каждая строка может содержать одно правило.

Простой синтаксис

Формат простой команды выглядит так:

найти=заменить

Например выражение cat=dog приведет к замене всех вхождений подстроки cat на подстроку dog. Команда аналогична обычной команде поиска-замены, только задать можно любое число правил .

Расширенный синтаксис

Расширенный синтаксис команды, позволяет вводить условия замены:

найти=заменить | +включая -исключая

Параметры "включая" и "исключая" задают случаи в которых замена должна производиться или не должна.

Например команда cat=dog | -cattle заменит все вхождения cat на строку dog, кроме случая, когда это слово cattle.

ВНИМАНИЕ: между знаком плюс (минус) и правилом, а также внутри условий и правил не должно быть пробелов! Пробел является разделителем. Если пробел должен участвовать в операции, то его нужно вводить как спец. символ по ASCII-коду. В поиске-замене может участвовать любой ASCII-символ. Код символа записывается в фигурных скобках. Например {13} - символ возврата каретки, а {32} - пробел. Сам символ скобки можно ввести как {{.

Исходная строка поиска также может обозначаться значком $. Следующая команда абсолютно эквивалентна предыдущей: cat=dog | -$tle. Это удобно при перечислении большого числа условий:

Например: cat=dog | -$tle -$egory -$ering

По этому правилу подстрока cat будет заменена на подстроку dog, во всех словах, кроме слов cattle, category и catering.

Если указаны только исключающие условия, то считается, что слово принимается по умолчанию, а затем все слова соответствующие исключающим условиям отвергаются и замена не производится.

Если указаны только условия включения, то считается, что слова отвергаются по умолчанию и только слова удовлетворяющие условиям подвергаются замене

Например cat=dog | +{32}${32}

Эта команда заменит только те строки cat, где справа и слева стоит пробел. Пробел приходится вводить как спец. символ по его ASCII-коду так, как обычные пробелы отсекаются при разборе условий.

Если указаны и включающие и исключающие правила, например cat=dog | +${32} -s$, то разбор правил происходит слева направо для каждого слова-кандидата на замену. Практика показывает, что такие смешанные правила можно описать при помощи только включений или только исключений.

Примеры

Вставление пробела перед скобкой, если его там нет:  (={32}( | -{32}(

Вставление пробела после запятой, если там ее нет:  ,=,{32} | -,{32}

Прочие функции

Списки поиска/замены можно сохранять и загружать с диска в виде обычных текстовых файлов. При поиске, строки списка применяются ко всему тексту по очереди. Сначала производится поиск-замена по правилам в первой строке списка на всем тексте, затем берется вторая строка и так далее.


Определение языка текста

Функция вызывается командой меню <Инструменты | Определить Язык>. Для успешной проверки правописания, слова разных языков должны быть помечены соответственно. При открывании простых текстовых форматов, не позволяющих сохранять языковую информацию, перед проверкой правописания необходимо установить правильный язык вызовом этой команды. Эта функция также позволяет выделять латинские буквы и кириллицу разными цветами. Это позволяет найти аномалии включения латинских букв в русские слова и наоборот. Для исправления таких аномалий используйте функцию <Инструменты | Исправление смешанных букв>.


Работа со списками и сортировка

Функция <Инструменты | Списки и сортировка> позволяет работать с содержимым редактора, как со списком строк и производить над ними следующие действия:

1. Сортировать по значению

2. Удалять повторяющиеся элементы (с учетом и без учета регистра)

3. Удалять пустые строки

4. Удалять пробелы в начале и конце каждой строки

5. Извлекать из каждой строки определенное по порядку слово

6. Удалять  из каждой строки определенное по порядку слово

7. Удалять строку при наличии в ней определенной подстроки

8. Удалять строку при отсутствии в ней определенной подстроки

Эта функция может пригодиться для работы со словарями и списками адресов почтовой рассылки.


Удаление HTML-тегов

Функция <Конверсия | HTML в Текст> позволяет удалить из текста HTML-теги и превратить HTML в простой текст. Кроме того эта функция правильно заменит такие специальные слова HTML, как &quot;, &nbsp; и т.д. на соответствующие им символы и восстановит тексты вида "&agrave;&aring;&atilde;&auml;&ccedil;&eacute;".

Полный список распознаваемых HTML-кодов можно увидеть и отредактировать в <Файл | Системные файлы | Коды HTML>


Удаление форматирования и цвета

Команда <Формат | Убрать форматирование> приведет весь текст к оcновному шрифту. Шрифт этот задается в диалоге <Файл | Параметры> Того же эффекта можно добиться переключившись в режим <Вид | Простой текст>.

Команда <Формат | Убрать цвет> просто сделает весь текст черным, не изменяя размеры шрифтов и прочее форматирование.


Ввод текста и автоматизация

Иероглиф предоставляет специальные функции для облегчения и автоматизации ввода текстов. К их числу относятся автоматическое переключение раскладки клавиатуры при печати, проверка правописания, тезаурус, функции изменения регистра букв и перевода чисел в словесное представление.


Стандартные возможности редактора

Иероглиф является полноценным однооконным редактором с такими возможностями как:

1. Поддержка основных атрибутов текста (жирный, курсив, подчеркивание, надстрочный, подстрочный)

2. Выравнивание и отступы (форматирование абзацев)

3. Drag&Drop файлов и выделенных блоков

4. Возможность неограниченного отката и повтора на все операции (Undo & Redo)

5. Функции работы с буфером обмена (clipboard)

6. Вставка в текст картинок

7. Вставка в текст любых OLE-объектов (например таблиц Excel)

Отдельно можно отметить следующие функции:

1. Команда <Правка | Копировать информацию> заносит в clipboard информацию о выделенном куске текста (позиция, длина, строка, колонка). Очень удобно для получения информации о полях текстовых баз данных. Можно настроить вторую копию Иероглифа на захват содержимого Clipboard и быстро "измерить" положение полей в таблице с фиксированной шириной колонок.

2. В диалоге <Файл | Параметры> можно включить подсветку Интернет-адресов и использование умных кавычек типа елочка (открывающая и закрывающая).

3. В меню <Формат | Вставка> расположены команды вставки в текст разных объектов, в том числе Даты/Времени в разных форматах, специальных символов, произвольных фрагментов текста (например HTML-тегов).

4. Через меню <Вид | Цвет фона> можно поменять цвет фона окна редактора.


Автоматический выбор раскладки клавиатуры

Эта функция позволяет не задумываться о переключении между русской и английской раскладкой. Ошибка выбора неправильной раскладки очень распространена. Иногда пользователь успевает набить несколько слов, прежде чем увидит, что печатает русские слова в английской раскладке клавиатуры или наоборот. Иероглиф предоставляет три вида помощи:

•	Функция автоматического выбора раскладки позволяет менять раскладку автоматически при наборе слов. Вы просто печатаете слова не переключая клавиатуру. Иероглиф применяет свои алгоритмы, чтобы определить на каком языке было напечатано очередное слово и, если нужно, исправляет слово и меняет раскладку. Функция включается и отключается пунктом меню <Правка | Автоматизация ввода | Авто раскладка клавиатуры>.

•	Если авто-переключатель клавиатуры отключен, а вы набрали слово в неверной раскладке, то нажатие Ctrl-Enter (или выбор пункта меню <Правка | Автоматизация ввода | Принудительная раскладка клавиатуры> изменит раскладку всех букв левее курсора до начала слова или же, если в тексте сделана пометка, помеченного текста.

•	Пока  Иероглиф запущен, функция ручного изменения раскладки будет работать в других программах по заданной комбинации клавиш (по умолчанию Ctrl-Alt-F11). назначение комбинации клавиш можно изменить в диалоге работы с внешними функциями


Проверка правописания и Тезаурус

Проверка правописания (spell-check)

Функция проверки правописания вызывается командами из меню <Инструменты | Проверка Правописания>. Существует два режима проверки - интерактивный, когда ошибки показываются по мере обнаружения или автоматический, когда все ошибки накапливаются в списке. Если вы закрыли список ошибок, то он может быть вызван повторно командой <Инструменты | Проверка Правописания | Результаты проверки>.

Вы также можете включить автоматическую проверку правописания при наборе текста. Опция включается и отключается пунктом меню <Правка | Автоматизация ввода | Авто проверка правописания>. Если вы включили эту опцию, то при вводе каждого слова будет производиться проверка на правильность и, если нужно, появляться окно с возможными правильными вариантами. Если вы не хотите ничего исправлять, то просто продолжайте набор и окошко подсказки исчезнет. Или же выберите нужный вариант клавишами "вверх", "вниз" и нажмите Enter.

Тезаурус

В Иероглифе также реализована интеграция со словарем синонимов WordWeb™. Последнюю версию WordWeb™ всегда можно скачать отсюда - http://www.x-word.com/thesaurus/. Там есть как бесплатная,  так и недорогая коммерческая версия. По качеству и полноте, тезаурус WordWeb™ заметно превосходит стандартный тезаурус из Microsoft Office™.


Функция изменения регистра букв

Функции изменения регистра букв вызываются через меню <Формат | Сменить регистр>. Варианты изменения такие:

ВЕРХНИЙ РЕГИСТР - все буквы заглавные

нижний регистр - все буквы строчные

Именной Регистр - все слова начинаются с заглавной буквы

Регистр предложения. - с заглавных букв начинаются все слова после точки

сМЕНИТЬ рЕГИСТР - перевести все заглавные буквы в строчные, а все строчные - в заглавные

Наиболее удобным способом исправления регистра букв единичных слов и коротких фраз является метод "<Формат | Сменить регистр | Через список вариантов>", который также вызывается комбинацией клавиш Ctrl+Q. Если вы набрали слово в неправильном регистре, просто нажмите Ctrl+Q и появится окно со списком вариантов исправления из которого можно выбрать правильный.


Функция перевода чисел в слова

Иероглиф поддерживает перевод чисел в словесную форму: 123 -> сто двадцать три.

Поддерживается 6 языков - Русский, Английский, Французский, Немецкий, Итальянский, Турецкий. Функция вызывается через меню <Формат | Число в Слова> или комбинацией клавиш Ctrl+W. При этом помеченное число или число, которое находится вблизи курсора будет переведено на всевозможные языки и список вариантов будут представлен в выпадающем окошке. Выберите нужный вариант и нажмите Enter. Число будет заменено на его словесное представление.


Закладки

Иероглиф позволяет устанавливать закладки в тексте при помощи команды <Поиск | Поставить закладку>. Под закладкой запоминается не только текущая строка, но и положение курсора в строке и положение строки на экране. Закладки нумеруются числами начиная с 1 и показываются в полоске закладок в нижней части окна редактора. Если вы перед установкой закладки выделите фрагмент текста, то первые 30 букв этого фрагмента будут показаны рядом с номером прямо на закладке. Это облегчает процесс запоминания того, куда ведут закладки.

Переход на закладку осуществляется либо щелчком на самой закладке, либо нажатием клавиши Ctrl+<номер закладки>. Удаление закладки производится через контекстное меню выпадающее при щелчке правой кнопки мыши на полоске закладок.


Таблица специальных символов

Командой <Инструменты | Таблица символов> вызывается таблица всех символов шрифта. В таблице можно шрифт, размер шрифта и кодовую страницу внутри шрифта. Выбранный символ показывается в укрупненном размере, который также можно изменять.

Выбранный символ вставляется в редактор двойным щелчком или одним щелчком с нажатой клавишей Ctrl. Кнопка <Копировать> посылает выбранный символ в буфер обмена, откуда он может быть вставлен в любую программу. Поэтому таблица спец. символов может быть использована вместо Character Map, которая идет в комплекте с Windows, но не устанавливается по умолчанию.

Список спец. символов

Часто используемые символы можно внести в список спец. символов нажатием на соответствующую кнопку. Список спец. символов появляется при выборе команды <Формат | Вставить | Cпециальный символ>.

Символам внесенным в список можно назначать комбинации клавиш. Для этого выберите нужный символ в списке и просто нажмите нужную комбинацию клавиш. У вас также есть возможность вставить символ вместе с шрифтом или использовать текущий шрифт. Эта и многие другие функции доступны через контекстное меню по правой кнопке мыши.


Взаимодействие с другими программами

В этой главе описывается интеграция редактора Иероглиф с системой Windows и взаимодействие с другими программами.


Режимы запуска программы

В диалоге <Файл | Параметры>, программа может быть настроена на разные режимы запуска. Программа может работать как обычное приложение, либо располагаться на панели задач (System Tray). Второй режим предпочтителен, если вы намереваетесь пользоваться  внешними функциями. Программа также может автоматически загружаться вместе с Windows.

При открывании, программа не загружает многие части, чтобы повысить скорость открывания и не занимать лишнюю память. Загрузка необходимых модулей произойдет при первом использовании соответствующих функций. При этом может появиться окно "Ждите...". Это нормально и происходит лишь при первом вызове функции.


Внешние функции

Использование функций Иероглифа в других приложениях

Обычный способ работы с Иероглифом заключается в копировании текста в редактор, применении нужных операций перекодировки и копировании текста обратно в рабочее приложение. Внешние функции – это операции, осуществляемые на выбранном участке текста прямо в рабочем приложении, при условии, что приложение поддерживает операции копирования и вставки (Copy и Paste). Внешние функции вызываются в любой программе Windows нажатием специальных комбинаций клавиш, задаваемых в диалоге <Файл | Параметры | Внешние функции>.

Например пометка текста в другой программе и нажатие Ctrl-Alt-F9 приведет к де-транслитерации текста прямо в активном приложении, без загрузки в Иероглиф. Разумеется сам Иероглиф тоже должен быть запущен в этот момент. Единственное неудобство такого подхода состоит в отсутствии цветовой пометки произведенных изменений.

ВНИМАНИЕ: Внешние функции будут запускаться только если в активном приложении помечен фрагмент текст.

Если активное окно поддерживает только операцию копирования и вставка текста невозможна (Read Only), то после обработки перекодированный текст останется в буфере обмена (clipboard).

Помимо непосредственного исполнения определенных операций, Иероглиф позволяет также открывать любой помеченный текст в редакторе нажатием одной клавиши (по умолчанию Alt-ScrollLock) и выполнять все операции через вызова специальной панели (клавиша Scroll Lock). Это удобно, поскольку не надо помнить все комбинации клавиш.


Захват текста из Clipboard

Помимо обычных функций работы с буфером обмена, Иероглиф обладает следующими возможностями:

В меню <Правка> есть пункт <Режим захвата Clipboard> задублированный соответствующей кнопкой в окне буфера обмена (окно с содержимым clipboard открывается через меню <Вид | Панель буфера обмена>).

Когда опция захвата включена, все, что появляется в буфере обмена автоматически добавляется к содержимому редактора. Это отличный инструмент для сбора информации из разных источников, например сбора адресов E-mail со страничек (мечта спаммера) или сбор выдержек из газетных статей.


Ассоциация с типами файлов

Диалог <Файл | Параметры> содержит закладку <Ассоциации>, где можно назначить Иероглиф основным редактором для определенных типов файлов. То есть редактором, который открывается при двойном щелчке на файле данного типа. Для установки ассоциаций, выберите в списке типов файлов, нужные типы и нажмите кнопку <Ассоциировать...>.

Вы также можете добавить свои типы файлов. Помните, что Иероглиф может открывать только текстовые файлы. Поэтому добавление нового типа имеет смысл только когда вы заведомо знаете, что в этом файле находится текст в одном из поддерживаемых форматов. Например BAT-файлы - это текстовые файлы. Ассоциация Иероглифа с JPG-файлами или BMP-файлами ни к чему хорошему не приведет. Иероглиф не умеет открывать картинки.

Иероглиф запоминает с какими программами все типы файлов ассоциировались раньше и может восстановить старые ассоциации. Для этого выберите нужные типы файлов и нажмите на кнопку <Восстановить...>.


Поддерживаемые форматы файлов

Иероглиф поддерживает все установленные в системе форматы файлов. Фильтры форматов регистрируются программами типа Microsoft Office™ и доступны для использования в других программах. Если никакие форматы не установлены, то Иероглиф все равно будет поддерживать следующие основные форматы:

1. TXT - обычный текст

2. RTF - Rich Text Format

3. Word 95 DOC - открываемый через фильтр программы WordPad, которая есть у всех.

Если файл не открывается, значит что-то не в порядке с фильтром, с вашим файлом или формат просто не поддерживается. В этом случае используйте буфер обмена (clipboard) для того чтобы перенести текст в программу.

Обратите внимание, что в списке поддерживаемых форматов может появиться HTML-фильтр. Это не означает, что Иероглиф будет редактировать HTML, а говорит лишь о том, что в вашей системе установлен фильтр для импортирования текста из HTML-файлов. Разумеется при сохранении такого файла в Иероглифе, никакого HTML в нем уже не будет. Мы не советуем пользоваться этим фильтром вообще, поскольку вместе с текстом из HTML-файлов часто приносится совершенно непотребные форматирование (таблицы, отступы, URL-адреса). Если вам нужно обработать текст для HTML-странички, то открывайте его как текстовый файл используя фильтр "HTML as Text". Если вам нужно перевести HTML файл в текст, откройте его как текстовый файл и примените команду удаления HTML-тегов.


Многоязычный интерфейс

Интерфейс редактора может быть переведен на любое количество языков. В комплект стандартной поставки входят Русский и Английский язык. Язык выбирается в диалоге <Файл | Параметры>

Файлы языков - это обычные текстовые файлы, которые лежат в каталоге Иероглифа и имеют расширение .lng. Внутри файла лежат строчки вида "имя=значение". Чтобы добавить новый язык, например немецкий, нужно скопировать один из существующих файлов (например English.lng) в файл с именем German.lng в том же каталоге, затем открыть этот файл в любом редакторе и перевести правые части ("значения") всех строк. Левые части ("имена") должны остаться неизмененными. Новый язык появится в списке выбора языка в диалоге <Файл | Параметры> при следующем запуске Иероглифа.


Прочие функции

Здесь описаны прочие функции редактора.


Графический калькулятор

В программе реализован простейший калькулятор, который понимает обычную последовательную запись формул, а не требует вводить операнды и операции по очереди, как стандартный калькулятор Windows. Калькулятор понимает основные тригонометрические и математические функции: sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), exp(x), ln(x), sqrt(x), sqr(x), а также константу pi. Поддерживаются операции сложения, вычитания, умножения, деления, деления нацело (div), остаток от деления нацело (mod), побитовый сдвиг (shr, shl), возведения в степень (x^2) и любая степень вложенности скобок. Отдельным переключателем выбирается единица измерения углов (радианы, градусы, грады).

Чтобы ввести число в 16-тиричной системе счисления используйте знак $ или #, например $FF0044. Результат может выводиться в двоичной, восмеричной, десятичной, шестнадцатиричной системах счисления и в римской нотации (XVII)

Калькулятор также может строить графики функций и табулировать функцию в заданном диапазоне. Для задания формулы используйте переменную x.